<?php
/**
 * Prognoz
 *
 * Класс для обработки раздела Prognoz
 *
 * @author Дмитрий Кузьма <kouzma.d@gmail.ru>
 * @version 1.0
 */
class Prognoz extends ActiveRecord {
  
	public $tableName = 'prognoz';
	public $pkName = 'ID_prognoz';

	protected $essenceType = 32;

	protected $arrWysiwyg = array('text');
	protected $arrSettings = array('created_at' => true,  // в БД храним вмеря создания
																'updated_at' => true, 	// в БД храним вмеря редактирования
																'author' => true);			// в БД храним автора (ID_user)

	protected $validatesLengthOf = array('text' => array('minimum' => 3, 'message' => 'Для написания текста используйте более 3 символов'),
			 'date' => array('minimum' => 10, 'maximum' => 10, 'message' => 'Введите дату матча (дд.мм.гггг) нажитем левой кнопки мышки.'),
			 'prognoz_name' => array('minimum' => 5, 'maximum' => 255, 'message' => 'Матч должен содержать от 5 символов текста.'),
			 'ratio' => array('minimum' => 3, 'maximum' => 5, 'message' => 'Введите коэффициент в формате 00.00'));

  public function __construct($arrInitialFields = null) {
		parent::__construct($arrInitialFields);
  }

  /**
   * Изменение полей перед сохранением
   *
   */
  public function beforeSave() {
    if (isset($this->tableFields['play_off'])) $this->tableFields['play_off'] = 1;
    else $this->tableFields['play_off'] = 0;

    if (isset($this->tableFields['is_vip'])) $this->tableFields['is_vip'] = 1;
    else $this->tableFields['is_vip'] = 0;    
    
    $this->tableFields['date'] = Service_Date::humanDateToBdBySplit($this->tableFields['date']);
    
  }

  /**
   * Настройка проверок перед валидацией
   * Удаляем <br> из вайсвига, если больше ничего нет
   *
   */
  public function beforeValidation() {
    //$this->tableFields['text'];
    if (trim($this->getField('text')) == '<br>') $this->setField('text', '');
  }
}
?>